package com.shop.cereshop.commons.tencent.im.model.request;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.shop.cereshop.commons.tencent.im.model.msg.element.TIMMsgElement;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.List;

/**
 * @description:  修改单聊历史消息 请求模型
 *                  参考文档: https://cloud.tencent.com/document/product/269/74740
 * @author zdd
 * @date 2025/9/23 17:11
 * @version 1.0
 */
@JsonInclude(JsonInclude.Include.NON_NULL)
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class ModifyC2cMsgRequest implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 消息发送方 UserID
     */
    @JsonProperty("From_Account")
    private String fromAccount;

    /**
     * 消息接收方 UserID
     */
    @JsonProperty("To_Account")
    private String toAccount;

    /**
     * 待修改消息的唯一标识 MsgKey
     */
    @JsonProperty("MsgKey")
    private String msgKey;

    /**
     * 可选：消息内容
     */
    @JsonProperty("MsgBody")
    private List<TIMMsgElement> msgBody;

    /**
     * 可选：消息自定义数据（云端保存）
     */
    @JsonProperty("CloudCustomData")
    private String cloudCustomData;


}
